package br.com.pucrs.tcc.ed;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

import br.com.pucrs.tcc.util.jsf.PaginaUtil;

@Entity
@Table(name = "PROFESSORES_DESEJADOS")
public class ProfessorPretendido implements Serializable {
	@Id
	@ManyToOne
	@JoinColumn(name = "GRUPOS_TRABALHO_ID")
	private GrupoTrabalho grupo;

	@Id
	@ManyToOne
	@JoinColumn(name = "PROFESSORES_MATRICULA")
	private Professor professor;

	@Column(name = "ORDEM_PREFERENCIA")
	private Integer ordemPreferencia;

	@Column(name = "CONTATADO")
	private Boolean contatado;
	
	@Column(name = "INTERESSE_PROFESSOR")
	private Boolean interesseProfessor;
	
	@Column(name = "RESPONDIDO")
	private Boolean respondido;
	
	public ProfessorPretendido() {
		professor = new Professor();
	}

	public GrupoTrabalho getGrupo() {
		return grupo;
	}

	public void setGrupo(GrupoTrabalho grupo) {
		this.grupo = grupo;
	}

	public Professor getProfessor() {
		return professor;
	}

	public void setProfessor(Professor professor) {
		this.professor = professor;
	}

	public Integer getOrdemPreferencia() {
		return ordemPreferencia;
	}

	public void setOrdemPreferencia(Integer ordemPreferencia) {
		this.ordemPreferencia = ordemPreferencia;
	}

	public Boolean getContatado() {
		return contatado;
	}

	public void setContatado(Boolean contatado) {
		this.contatado = contatado;
	}

	public Boolean getInteresseProfessor() {
		return interesseProfessor;
	}

	public void setInteresseProfessor(Boolean interesseProfessor) {
		this.interesseProfessor = interesseProfessor;
	}

	
	
	public Boolean getRespondido() {
		return respondido;
	}

	public void setRespondido(Boolean respondido) {
		this.respondido = respondido;
	}
	
	public String getContatadoDesc() {
		return PaginaUtil.convertSimNao(this.contatado);
	}

	@Override
	public boolean equals(Object obj) {
		if (obj == null) {
			return false;
		}
		if (obj instanceof ProfessorPretendido) {
			ProfessorPretendido prof = (ProfessorPretendido) obj;
			return this.professor.getMatricula().equals(prof.professor.getMatricula());
		}
		return false;
	}
		
	
}
